const qs = require('querystring')

module.exports = function(req,res,next){
    // 监听data事件，获取客户端发送到服务器的数据
    // 数据量较大时，无法一次性发完，则客户端会把数据切割后分批发送到服务器。所以data事件可能会触发多次，我们需要拼接完整的数据
    let str = ''
    req.on('data',(chunk)=>{
        str += chunk
    })
    // 客户端发送完毕会触发end事件，此时即可获取完整的参数
    req.on('end',()=>{
        console.log('str',str)
        // 紧接着把字符串格式的请求体数据，解析成对象格式
        const body = qs.parse(str)
        console.log('body',body)
        req.body = body
        next()
    })
}